TCL-视图

创建视图

将sql语句重用化,简化命令。

​ 基本语法:

1
2
3
4
5
6
7
8
create view ViewName
AS
select querylist #将该部分查询结果作为视图
from Table1 ConnectType
join Table2
on Connection_requirements
where conditions
...;#查询语句

​ 示例:

1
2
3
4
5
6
7
8
9
10
#查询姓名中包含a字符的员工名、部门名和工种信息
create view info
as
select last_name,department_name,job_title
from employees e
join departments d on e.department_id = d.department_id
join jobs j on e.job_id = j.job_id;

select * from info
where last_name like '%a%';
修改视图
1
2
3
4
5
6
7
8
9
#方式一
create or replace ViewName
as
...#查询语句

#方式二
alter view
as
...#查询语句
删除视图
1
drop view ViewName;
查看视图
1
desc ViewName
更新视图数据

更新视图中的数据(非连接逻辑)

基本语法与普通表相同(表名替换为视图名)

注意:

  1. 以下视图(数据)不可更新(插入、修改、删除)

    • 包含分组函数、distinctgroup byhavingunionunion all的视图

    • 常量视图、连接得到的视图、select 中包含子查询的视图

    • 源自不可更新视图

​ 2. 修改内容同步到源表